#region

using Vin.Extension.Framework.Sms.Model;

#endregion

namespace Vin.Extension.Framework.Sms.ServiceInterface;

public interface IVinSmsService
{
    public Task<string> SendCodeAsync(string businessDesc, string receiver, VinSmsSendOption? option = null);

    public Task<string> SendCodeAsync(string businessDesc, string receiver, string title, string content, object data,
        VinSmsSendOption? option = null);

    public Task SendAsync(string businessDesc, string receiver, string title, string content, object data,
        VinSmsSendOption? option = null);

    public Task SendAsync(string businessDesc, List<string> receivers, string title, string content, object data,
        VinSmsSendOption? option = null);
    
    public Task<bool> VerifyCodeAsync(string uuid, string code);
    
    public Task<string> GetCodeAsync(string uuid);
}